﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using RedBit.UserVoice.Model;
using System.Collections.Generic;

namespace RedBit.UserVoice.OAuth
{
    public class OAuthUser
    {
        //TODO: Fill this out with the rest of the properties using this json:
        /*
         * {
  "visible_forums": [
    {
      "name": "General",
      "forum_activity": {
        "votes_available": 10,
        "supported_suggestions": []
      },
      "is_private": false,
      "url": "/forums/104975-general",
      "id": 104975,
      "max_votes": 10,
      "idea_count": 1
    }
  ],
  "avatar_url": "http://www.gravatar.com/avatar/32d5fbbc1579244aadfffe94f52f218d",
  "authentication": null,
  "name": "Anonymous",
  "created_at": "2011/03/23 18:44:13 +0000",
  "guid": null,
  "title": null,
  "updated_at": "2011/03/23 18:44:14 +0000",
  "supported_suggestions_count": 0,
  "anonymous": false,
  "url": "http://wpdev.uservoice.com/users/19214395-anonymous",
  "karma_score": 0,
  "id": 19214395,
  "email_confirmed": false,
  "roles": {
    "admin": false,
    "owner": false
  },
  "created_suggestions_count": 0,
  "email": "scott@test.com"
}
         */
        public string Id { get; set; }
        public string AvatarUrl { get; set; }
        public string Name { get; set; }
        public DateTime CreatedAt { get; set; }
        public string Email { get; set; }

        public int KarmaScore { get; set; }
        public int CreatedSuggestionsCount { get; set; }


        public string Guid { get; set; }

        public ICollection<UVForum> Forums { get; set; }

        public List<UVSupportedSuggestions> SupportedSuggestions { get; set; }
    }

    public class UVSupportedSuggestions
    {
        public int Votes { get; set; }
        public string Id { get; set; }

        public string ForumId { get; set; }
    }
}
